<?
header("Content-Type: text/html; charset=utf-8");
error_reporting(E_ERROR|E_WARNING|E_PARSE);
if(!file_exists("conf/server.conf.php")){
    echo "The setup script has not been run yet. Please run the <a href=\"setup.php\">setup script</a> or consult a developer!";
	exit;
}
session_start();
$microtime=microtime(true);
define("InStern", true);

//Laden der Configuration
include("conf/main.conf.php");
include("conf/server.conf.php"); //for specific configuration
include("conf/fraktionen.conf.php");
//Laden der Klassen
include("class/website.class.php");
include("class/mysql.class.php");
//Verbinden mit der Datenbank
$db=new database($config_db_hostname,$config_db_uname,$config_db_upass);
$db->selectDb($config_db_name);
//Laden aller ALLGEMEINEN FUNKTIONEN
include("funk/alle.php");
//Laden aller PORTALSPEZIFISCHEN Funktionen
$verz=opendir("funk/portal");
while ($file=readdir($verz)){
    if(filetype("funk/portal/$file")!="dir"){
        include_once("funk/portal/$file");
	}
}
closedir($verz);

if($_GET[page]=="logout") {
    if (is_array($_SESSION["return_to_user"])) {
        // Zum ursprünglichen User zurückkehren (wenn man sich als Admin in einen anderen Account eingeloggt hat)
        $_POST["name"] = $_SESSION["return_to_user"][Name];
        $passwort_hash = $_SESSION["return_to_user"][Passwort];
        session_unset();
        include("sc/login.sc.php");
    } else {
        //print_r($_SESSION["return_to_user"]);
        session_unset();
    }
}

//------------------------------------------------------------------------Sonderseiten (werden durch Events geladen)
//Neue Argbs bestätigen
if($_GET[confirm]>0 AND $_GET[cuser]>0){
    $abfrage="UPDATE user SET Code=0 WHERE Regdate='".$db->real_escape_string($_GET[cuser])."' AND Code='".$db->real_escape_string($_GET[confirm])."';";
    $db->query($abfrage);
    if($db->affected_rows>0){
	    $account_confirm=true;
    }
    $_REQUEST[page]="confirm";
}
//Einloggen
if($_POST['do']=="login" OR isset($_GET[al])) include("sc/login.sc.php");
//------------------------------------------------------------------------Darstellung der eigentlichen Seite
if(!isset($_SESSION[lang])){
    //Default Language ist ersteinmal Englisch
    $_SESSION[lang]=$config[lang];
}
//Spracheinstellkungen werden über setlanguage verändert
if(isset($_GET[setlanguage])){
    if(is_dir("lang/".$_SESSION[lang])){
        $_SESSION[lang]=$_GET[setlanguage];
    }
}
//Hauptsprachfile
include("lang/".$_SESSION[lang]."/portal.lang.php");
include("lang/".$_SESSION[lang]."/configuration.lang.php");
//-------------------------------------------------------------------------Auswahl der richtigen Contentpage
//Anfragen entgegennehmen
if(isset($_REQUEST[page])){
    $_SESSION[page]=$_REQUEST[page];
}
//berechtigung prüfen
if(!$_SESSION[login] AND !in_array($_SESSION[page],$config[nologin])){
    $_SESSION[page]="index";
}
//Meldung fals der Account gesperrt ist
if($_SESSION[login] AND $_SESSION[user][Rang]<0){
    $_SESSION[page]="disabled";
}
//Überprüfen ob es die Datei überhaupt gibt
if(file_exists("inc/portal/portal_$_SESSION[page].inc.php")){
    $page="inc/portal/portal_$_SESSION[page].inc.php";
}else{//ansonsten wird die indexseite angezeigt
    $page="inc/portal/portal_index.inc.php";
}
//---------------------------------------------------------------------Webseite generieren
$site=new website("templates/default/portal.php");
$site->addcode("title","Sternen-Schlacht - $config[version]");
$site->addmodule("metatags","sc/metatags.sc.php");
$site->addmodule("menue","module/portal/menue.module.php");
$site->addmodule("spielerinfo","module/portal/spielerinfo.module.php");
$site->addmodule("serverstats","module/portal/serverstats.module.php");
$site->addcode("version","$config[version]");  //Workaround, da die Versionsnummer nicht includet werden kann-> gibt noch keine lösung für die globals

//Webseite laden
ob_start();
include($page);
$site->addcode("content",ob_get_contents());
ob_clean();	
$site->show();


